package com.tbit.main.service;

import com.tbit.main.pojo.AccountUser;
import com.tbit.main.pojo.Machine;

import java.util.List;
import java.util.Map;

/**
 * @author LMY
 * @create 2021-05-25 10:56
 * 工单车辆查询
 */
public interface WorkOrderMachineService {

    /**
     * 根据电量查询
     *
     * @param accountId
     * @param soc
     * @return
     */
    List<Map<String, Object>> getByPower(Integer accountId, Integer soc, Integer mapType, AccountUser accountUser);

    /**
     * 根据闲置时间查询
     *
     * @param accountId
     * @param hours
     * @return
     */
    List<Map<String, Object>> getByUnuse(Integer accountId, Integer hours, Integer mapType, AccountUser accountUser);

    /**
     * 查询异常车辆
     *
     * @param accountId
     * @param abnormalType
     * @return
     */
    List<Map<String, Object>> getByAbnormal(Integer accountId, List<Integer> abnormalType, Integer mapType, AccountUser accountUser);

    /**
     * 查询故障车辆
     *
     * @param accountId
     * @param mapType
     * @return
     */
    List<Map<String, Object>> getByFault(Integer accountId, Integer mapType, List<Integer> faultState, AccountUser accountUser);

    /**
     * 根据设备编号查询
     *
     * @param userCode
     * @return
     */
    Machine getByUseCode(String userCode);
}
